package ${properties.requestPackage};

import com.murong.ecp.bp.common.dict.ECPDict;
import com.murong.ecp.bp.common.dict.MrDictType;
import com.murong.ecp.dfp.pub.tool.api.DfpBaseReqBO;
import lombok.Data;
import lombok.ToString;

/**
 * ${properties.requestClass}
 * <p>
 * 功能描述：${properties.transCommentZh} 请求对象
 * 该类由代码生成器自动生成，请勿手动修改。
 * 
 * @author ${properties.authorName}
 * @editTime ${properties.editTime}
 */
@Data
@ToString(callSuper = true)
public class ${properties.requestClass} extends DfpBaseReqBO {
    <#list request as field>

    @ECPDict(type = MrDictType.${field.mrType}, length = ${field.length}, desc = "${field.comment}|${field.desc}", required = ${field.required?string('true','false')}<#if field.enums?? && field.enums?has_content>, enums = ${field.enums}</#if>)
    private ${field.type} ${field.name};
    </#list>
}

<#--
示例数据结构：
{
  "interfaceName": "SavingQueryService",
  "transName": "savMainAcctQry",
  "className": "SavMainAcctQry",
  "transCommentZh": "主账户信息查询",
  "transCommentEn": "Savings main account information query",
  "transClass": "query",
  "simpleName": "sav",
  "request": [
    {"name": "acNo", "type": "String","mrType":"CHAR", "comment": "账号", "length": 32, "desc": "Account Number", "required": false},
    {"name": "usrNo", "type": "Long","mrType":"NUMBER", "comment": "用户号", "length": 13, "desc": "User number", "required": true},
    {"name": "capTyp", "type": "String","mrType":"CHAR", "comment": "资金类型", "length": 1, "desc": "Capital type", "required": false}
  ],
  "response": [
    {"name": "acNo", "type": "String","mrType":"CHAR", "comment": "账号", "length": 32, "desc": "Account Number", "required": false},
    {"name": "capProp", "type": "String","mrType":"CHAR", "comment": "资金类型", "length": 1, "desc": "Capital type", "required": false}
  ],
  "properties": {
    "authorName": "haoyulin",
    "editTime": "2025-06-11 10:00:00",
    "actionPackage": "com.murong.ecp.dbs.ccs.application.action",
    "controllerPackage": "com.murong.ecp.dbs.ccs.application.controller",
    "interfacePackage": "com.murong.ecp.dbs.ccs.api.service",
    "requestPackage": "com.murong.ecp.dbs.ccs.api.model.query",
    "responsePackage": "com.murong.ecp.dbs.ccs.api.model.query",
    "requestClass": "SavMainAccountQueryReqBO",
    "responseClass": "SavMainAccountQueryRspBO",
    "interfaceUrl": "/sav/savingQuery",
    "methodUrl": "/querySavingMainAccount"
  }
}
-->